package com.baohulu.baohulu.bean;

import com.baohulu.baohulu.utils.TimeUtil;

import org.json.JSONException;
import org.json.JSONObject;

public class UserRecord {

    private String ballKey;
    private long startTimeInSecond;
    private long endTimeInSecond;
    private String startTime;
    private String endTime;
    private double cost;
    private long rentTimeInSecond;
    private String rentTime;
    private int state;

    private UserRecord(String ballKey, long startTimeInSecond, long endTimeInSecond, String startTime,
                       String endTime, double cost, long rentTimeInSecond, String rentTime, int state) {
        this.ballKey = ballKey;
        this.startTimeInSecond = startTimeInSecond;
        this.startTime = startTime;
        this.endTimeInSecond = endTimeInSecond;
        this.endTime = endTime;
        this.cost = cost;
        this.rentTimeInSecond = rentTimeInSecond;
        this.rentTime = rentTime;
        this.state = state;
    }

    public static UserRecord fromJsonObject(JSONObject jsonObject) {
        UserRecord userRecord = null;
        try {
            String ballKey = jsonObject.getString("ball_key");
            String startTime = jsonObject.getString("start_time");
            long startTimeInSecond = TimeUtil.timeInSecond(startTime);
            String endTime = jsonObject.getString("end_time");
            long endTimeInSecond = TimeUtil.timeInSecond(endTime);
            long rentTimeInSecond = jsonObject.getLong("time");
            String rentTime = TimeUtil.formatTimeInChinese(rentTimeInSecond);
            double cost = jsonObject.getDouble("cost");
            int state = jsonObject.getInt("state");
            userRecord = new UserRecord(ballKey, startTimeInSecond, endTimeInSecond,
                    startTime, endTime, cost, rentTimeInSecond, rentTime, state);
        } catch (JSONException e) {
            e.printStackTrace();
        }
        return userRecord;
    }

    public String getStartTime() {
        return startTime;
    }

    public void setStartTime(String startTime) {
        this.startTime = startTime;
    }

    public String getEndTime() {
        return endTime;
    }

    public void setEndTime(String endTime) {
        this.endTime = endTime;
    }

    public double getCost() {
        return cost;
    }

    public void setCost(double cost) {
        this.cost = cost;
    }

    public String getRentTime() {
        return rentTime;
    }

    public void setRentTime(String rentTime) {
        this.rentTime = rentTime;
    }

    public int getState() {
        return state;
    }

    public void setState(int state) {
        this.state = state;
    }
}
